1. Field of the Invention
The present invention relates to an image generating apparatus that generates an image by performing a perspective transformation process and the like, and more particularly, to movement of a viewing point of a virtual camera for avoiding an obstacle.
2. Description of the Related Art
Among three-dimensional video games, there are video games in which an image acquired from perspective transforming a player character, which is moved in a virtual three-dimensional space by an operation of a player, as a subject is displayed on a game screen. Here, when an object (hereinafter, abbreviated as an obstacle) such as a land form or a building that becomes an obstacle is located between the position of a viewing point of a virtual camera and the position of a player character that becomes a subject, the player cannot visually recognize the player character on the game screen, and accordingly, there may be a trouble in progressing the game.
In order not to cause any trouble in progressing the game even in the above-described case where an obstacle is located between the position of the viewing point of the virtual camera and the position of the player character that becomes a subject, a technique of not displaying the obstacle or displaying the obstacle as a wire frame has been considered. In addition, in order to display the player character that becomes a subject on the game screen without disturbing the atmosphere of the game, a technique of performing a perspective transformation process for the obstacle has been considered (for example, see Japanese Patent No. 3141737 (paragraphs 0007, 0061, 0071, and the like)).
However, according to the technique disclosed in Japanese Patent No. 3141737, when an obstacle exists between the position of the viewing point of the virtual camera and the subject, an object that is located on the rear side of the obstacle and should not be seen is perspective displayed. In such a case, the player can visually recognize the subject all the time, and accordingly, it is convenient to progress the game. However, a subject that should not be seen is visually recognized by the player, and thus a feeling of strangeness may be acquired from the game screen.
On the other hand, in most of general three-dimensional video games, in a case where an obstacle is located between the position of the viewing point of the virtual camera and the position of the subject, a technique of moving the viewing point of the virtual camera to such a position that the obstacle is not located between the position of the subject and the position of the viewing point of the virtual camera has been employed. In addition, as a destination of the position of the viewing point of the virtual camera for avoiding an obstacle, a position located on the upper side of polar coordinates or a position closet to the subject than the obstacle is generally used.
However, in the virtual three-dimensional space that is used in a game, there are many objects such as walls that have heights larger than the player character. Thus, according to the technique of moving the position of the viewing point of the virtual camera to a position located on the upper side of polar coordinates, there is a problem that a view angle for the subject is considerably changed. In addition, according to the technique of moving the position of the viewing point of the virtual camera to a position closer to the subject than the object, particularly when the obstacle is located near the subject, there is a problem that the amount of movement of the position of the viewing point of the virtual camera becomes too large.
In addition, when any one of the above-described techniques is used as a technique of moving the position of the viewing point of the virtual camera for avoiding an obstacle, a state in which an obstacle abruptly exists between the position of the viewing point of the virtual camera and the position of the subject occurs from a state in which the obstacle does not exist therebetween. Accordingly, the position of the viewing point of the virtual camera is moved to a completely different position instantly. In a real world, in a case where one cameraman performs a photograph operation, the instant movement of the camera described above cannot happen, and accordingly, there is a possibility that the player acquires a feeling of strangeness from the game screen.
In addition, even in a case where the position of the viewing point of the virtual camera is moved to a position for avoiding an obstacle for a predetermined time period, there are many cases that the position of the viewing point of the virtual camera is abruptly moved, and accordingly, so-called camera sickness (camera sickness) may occur to the player. In a real world, particularly when the obstacle is located close to the cameraman, a case where the cameraman does not recognize existence of the obstacle until the obstacle is located between the camera and the subject scarcely occurs. In addition, when there is a possibility that the obstacle is located between the camera and the subject, generally, the cameraman is supposed to move for avoiding the obstacle in advance.